package org.xx.armory.config.log4j2;

import static org.xx.armory.commons.Validators.notBlank;

public final class RedisAppenderSection
        extends AppenderSection {
    private String dataSourceName;
    private String key;

    public RedisAppenderSection() {
        setName("redis");

        this.key = "log4j2";
    }

    /**
     * 获取使用的Redis数据源的名字。
     *
     * @return 使用的Redis数据源的名字。
     */
    public final String getDataSourceName() {
        return this.dataSourceName;
    }

    /**
     * 设置使用的Redis数据源的名字。
     *
     * @param dataSourceName
     *         使用的Redis数据源的名字。
     * @throws IllegalArgumentException
     *         如果参数{@code dataSourceName}是{@code null}或者只包含空白字符。
     */
    public final void setDatabaseName(
            String dataSourceName
    ) {
        this.dataSourceName = notBlank(dataSourceName, "dataSourceName").trim();
    }

    public String getKey() {
        return key;
    }

    public void setKey(
            String key
    ) {
        this.key = key;
    }
}
